package com.wx.algorithm.sort;

import com.wx.ArrayUtils;

/**
 * @ClassName SimpleSelectSort
 * @Author wx
 * @Description 代码简化版选择排序
 *  时间复杂:O(n2)
 *  空间复杂:O(1)
 * @Date 2020-03-25-21:44
 */
public class SimpleSelectSort {


    /**
     * 排序实现
     */
    public static void sort(int[] array) {
        if (ArrayUtils.arrayValidation(array)) {
            return;
        }
        for (int i = 0; i < array.length; i++) {
            int minIndex = i;
            for (int j = i + 1; j < array.length; j++) {
                if (array[j] < array[minIndex]) {
                    minIndex = j;
                }
            }
            ArrayUtils.swop(array,i,minIndex);
        }
    }

    public static void main(String[] agrs) {
        //对数验证
        ArrayUtils.logarithmicRun(10000,50,10,SimpleSelectSort::sort);

    }
}
